package execption;

/**
 * 异常处理机制中的tty-catch
 * 语法：
 * try{
 *       可能出现异常的代码片段
 * }catch（XXXException e）{
 *     当try中出现XXXException异常后的解决方法
 * }
 */

public class TryCatchDemo {
    public static void main(String[] args) {
        System.out.println("程序开始了...");
        try {
            //当JVM执行程序遇到一个异常时就会实例化该异常并将其抛出


            String str = "";
            System.out.println(str.length());

            System.out.println(str.charAt(0));

            System.out.println(Integer.parseInt(str));

            System.out.println("!!!!!!!!!!!!!");

            //当多个异常的解决办法相同时，可以使用同一个catch
        }catch (NullPointerException |StringIndexOutOfBoundsException e){
            //try中出现空指针的解决办法，实际开发要结合需求来进行处理
            System.out.println("出现空指针或者下标越界统一解决方法！");

            //可以在最后一个catch处捕获Exception 避免因为一个未捕获的异常导致程序中断
        }catch (Exception e){
            System.out.println("反正就是出了一个错");
        }
        System.out.println("程序结束了");


    }
}
